//
//  UITableViewHeaderFooterView+TZExtension.m
//  TZOCExtension
//
//  Created by Tim.Z on 2017/1/4.
//  Copyright © 2017年 Tim.Z. All rights reserved.
//

#import "UITableViewHeaderFooterView+TZExtension.h"

@interface UITableViewHeaderFooterView ()

@property (nonatomic, copy) NSString *theReuseID;

@end

@implementation UITableViewHeaderFooterView (TZExtension)

- (NSString *)theReuseID{
    return [NSString stringWithFormat:@"%@ID", NSStringFromClass([self class])];
}

- (nullable __kindof UITableViewHeaderFooterView *)tz_cellNibWithTableView:(nullable UITableView *)tableView section:(NSInteger)section{
    __kindof UITableViewHeaderFooterView *footerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:self.theReuseID];
    if (!footerView) {
        [tableView registerNib:[UINib nibWithNibName:NSStringFromClass([self class]) bundle:nil] forHeaderFooterViewReuseIdentifier:self.theReuseID];
        footerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:self.theReuseID];
    }
    if (tableView.tz_VC) {
        self.tz_VC = tableView.tz_VC;
    }
    
    return footerView;
}

- (nullable __kindof UITableViewHeaderFooterView *)tz_cellClassWithTableView:(nullable UITableView *)tableView section:(NSInteger)section{
    __kindof UITableViewHeaderFooterView *footerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:self.theReuseID];
    if (!footerView) {
        [tableView registerClass:[self class] forHeaderFooterViewReuseIdentifier:self.theReuseID];
        footerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:self.theReuseID];
    }
    if (tableView.tz_VC) {
        self.tz_VC = tableView.tz_VC;
    }
    
    return footerView;
}

@end
